#include <iostream>
using namespace std;
class Complex {
private:
    double real;
    double image;
public:
    // 构造函数
    Complex(double r = 0, double i = 0) : real(r), image(i) {}
    // 取反成员函数
    Complex operator-() const {
        return Complex(-real, -image);
    }
    // 输出成员函数
    void Print() const {
        cout << "(" << real << "," << image << ")" << endl;
    }
    // 友元函数声明
    friend Complex operator+(const Complex& c1, const Complex& c2);
};
// 友元函数定义
Complex operator+(const Complex& c1, const Complex& c2) {
    return Complex(c1.real + c2.real, c1.image + c2.image);
}
int main() {
    double r1, i1, r2, i2;
    // 读入两个复数
    cin >> r1 >> i1;
    cin >> r2 >> i2;
    // 初始化复数对象c1和c2
    Complex c1(r1, i1);
    Complex c2(r2, i2);
    // 计算c1与c2相加结果，并输出
    Complex sum1 = c1 + c2;
    sum1.Print();
    // 计算c2的相反数与c1相加结果，并输出
    Complex sum2 = -c2 + c1;
    sum2.Print();
    // 输出c2
    c2.Print();
    return 0;
}